﻿using System;
using System.Threading.Tasks;
using TianShu.Service.Contracts.Service.Crud;
using TianShu.Service.Dtos;
using TianShu.TenantManagement.Service.Abstracts.TenantService.Dtos;

namespace TianShu.TenantManagement
{
    public interface ITenantAppService : ICrudService<Guid, TenantDto, TenantCreateDto, TenantUpdateDto>
    {
        Task<ResultDto<TenantDto>> GetByCodeAsync(string code);
        Task<PageResultDto<object>> GetDefaultConnectionStringAsync(Guid id);

        Task<PageResultDto<bool>> UpdateDefaultConnectionStringAsync(Guid id, TenantConnectionStringUpdateInput input);

        Task<PageResultDto<bool>> DeleteDefaultConnectionStringAsync(Guid id);
    }
}
